Many memory systems treat a host request to write a file as a new write, meaning that the entire file is written in memory even if the file is a modified version of an already-stored file. Accordingly, the memory may contain multiple copies of the same file, each with slight modifications, which is a sub-optimal use of the memory. One way to address this issue is by using a technique known as “deduplication.” “Deduplication” refers to the process of identifying N duplicate copies of data in memory, physically storing only one copy of the data, and using a table to map the N logical block addresses for the data to the one physical address that actually stores the data. However, deduplication algorithms can be very complex and require a large amount of firmware and hardware overhead.